Skip to content

chore: DEVPLAT-7373 fix Node.js 20 deprecated GitHub Actions#50

Open
kristianmills wants to merge 2 commits intomasterfrom
kristianm/node20-deprecated-actions
Open

chore: DEVPLAT-7373 fix Node.js 20 deprecated GitHub Actions#50
kristianmills wants to merge 2 commits intomasterfrom
kristianm/node20-deprecated-actions

Conversation

@kristianmills
Copy link
Copy Markdown

@kristianmills kristianmills commented Mar 20, 2026

Summary

Upgrades GitHub Actions that use the deprecated Node.js 20 runtime to Node.js 24 compatible versions.

Node.js 20 actions will be forced to run on Node.js 24 by default starting June 2nd, 2026. See the GitHub deprecation notice.

Changes made:

  • actions/checkout@v2actions/checkout@v6

🤖 Generated with Claude Code

DEVPLAT-7373


Note

Low Risk
Low risk: this only updates GitHub Actions versions in the CI/CD workflow; behavior should be unchanged aside from action implementation updates.

Overview
Updates the CI/CD GitHub Actions workflow to newer action major versions to avoid deprecated Node.js runtimes.

Specifically bumps actions/setup-go to @v6, actions/checkout to @v6, docker/login-action to @v4, and goreleaser/goreleaser-action to @v7 for both the test and release jobs.

Written by Cursor Bugbot for commit 28f86cd. This will update automatically on new commits. Configure here.

@kristianmills kristianmills marked this pull request as ready for review March 23, 2026 18:19
Copy link
Copy Markdown

@cursor cursor bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 3 potential issues.

Fix All in Cursor

Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.


- name: Set up Go
uses: actions/setup-go@v1
uses: actions/setup-go@v6
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

setup-go@v6 before checkout breaks default caching

High Severity

In the test job, actions/setup-go@v6 runs before actions/checkout@v6. Unlike @v1, setup-go@v6 enables dependency caching by default and needs go.mod for cache key generation. Since the repo hasn't been checked out yet, go.mod doesn't exist, and the step will fail with a "Dependencies file is not found" error. The release job has the correct order (checkout first), but the test job does not.

Additional Locations (1)
Fix in Cursor Fix in Web


- name: Set up Go
uses: actions/setup-go@v1
uses: actions/setup-go@v6
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unquoted go-version: 1.20 installs Go 1.2

High Severity

The unquoted go-version: 1.20 is parsed by YAML as the float 1.2, causing Go 1.2 (from 2013) to be installed instead of Go 1.20. The project's go.mod confirms the intended version is go 1.20. The value needs to be quoted (e.g., '1.20') to be treated as a string. This is a well-documented YAML gotcha that directly impacts both the test and release jobs after the setup-go version upgrade.

Additional Locations (1)
Fix in Cursor Fix in Web


- name: Run goreleaser
uses: goreleaser/goreleaser-action@v5
uses: goreleaser/goreleaser-action@v7
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Removed --rm-dist flag breaks goreleaser v2 release

High Severity

Upgrading goreleaser-action from @v5 to @v7 changes the default GoReleaser version from ~> v1 to ~> v2. GoReleaser v2 removed the --rm-dist flag entirely (replaced by --clean). The args: release --rm-dist on line 64 will cause the release job to fail with an unknown flag error. The flag needs to be updated to --clean.

Fix in Cursor Fix in Web

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant